package in.rob.client.fragment; import android.content.Intent; import android.os.Parcelable; import in.controller.adapter.ChannelAdapter; import in.controller.handler.ChannelStreamResponseHandler; import in.data.stream.ChannelStream; import in.lib.Constants; import in.lib.manager.APIManager; import in.lib.manager.ResponseManager; import in.lib.manager.UserManager; import in.lib.utils.Views.Injectable; import in.model.AdnModel; import in.rob.client.ChannelMessagesActivity; import in.rob.client.fragment.base.StreamFragment; @Injectable public class ChannelsFragment extends StreamFragment { @Override public void setupAdapter() { setAdapter(new ChannelAdapter(getContext())); } @Override public void fetchStream(String lastId, boolean append) { ChannelStreamResponseHandler response = new ChannelStreamResponseHandler(append); ResponseManager.getInstance().addResponse(getResponseKeys()[0], response, this); APIManager.getInstance().getChannels(lastId, response); } @Override public void onListItemClick(AdnModel model) { Intent messagesIntent = new Intent(getContext(), ChannelMessagesActivity.class); messagesIntent.putExtra(Constants.EXTRA_CHANNEL, (Parcelable)model); getActivity().startActivity(messagesIntent); } @Override public Class getCacheClass() { return ChannelStream.class; } @Override public String[] getResponseKeys() { return new String[] { String.format(Constants.RESPONSE_CHANNELS, UserManager.getInstance().getUser().getId()) }; } @Override public String getCacheKey() { return String.format(Constants.CACHE_CHANNELS, UserManager.getInstance().getUser().getId()); } }